// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Casino Top: cei mai buni casinouri online din România – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Casino Top: cei mai buni casinouri online din România

Casino Top: Cei mai buni casinouri online din România

Dacă sunteți în cautarea celor mai bune casinouri online din România, atunci ați venit pe locul potrivit. Această listă prezintă cele mai apreciate casinouri online din țară.
1. Casiino Hero: Un paradis al jocurilor de noroc online, oferind o varietate de jocuri și o experiență utilizator excelentă.
2. CasinoLuck: Cu o interfață ușor de utilizat și o gamă impresionantă de jocuri, CasiinoLuck este o alegere populară printre jucătorii români.
3. Royal Panda: Cunoscut pentru serviciile sale de primă clasă, Royal Panda oferă o selecție bună de jocuri și o experiență de joc plăcută.
4. 888 Casino: Unul dintre cei mai mari nume în industria de cazinou online, 888 Casino oferă o gamă largă de jocuri și o platformă sigură și de încredere.
5. Betway Casino: O altă opțiune populară, Betway Casino se remarcă printr-un design elegand și o selecție diversă de jocuri.
6. Jackpot City: Cu peste 500 de jocuri de cazinou și o interfață prietenoasă, Jackpot City este o alegere bună pentru jucătorii din România.
7. LeoVegas: Cunoscut sub numele de “Regele cazinourilor online”, LeoVegas oferă o experiență de joc mobilă superioară și o selecție impresionantă de jocuri.

Experienţă de joc de calitate: Ce casinouri online recomandăm în România

Dacă sunteți în căutarea unei experiențe de joc de calitate în România, noi vă recomandăm următoarele casinouri online:
1. Casino Fantastic – oferă o gamă largă de jocuri și o interfață ușor de utilizat.
2. Playamo – cu o interfață modernă și o gamă impresionantă de jocuri de la cei mai buni furnizori.
3. 888 Casino – un brand recunoscut pe plan mondial, oferind jocuri de calitate și o experiență de joc excelentă.
4. Betsson – cu o istorie bogată în industria jocurilor de noroc, Betsson oferă o experiență de joc sigură și plăcută.
5. Leovegas – oferă o experiență de joc mobilă de înaltă calitate, cu o gamă impresionantă de jocuri.
6. Mr Green – cu o interfață elegantă și o gamă largă de jocuri, Mr Green este o alegere bună pentru oricine caută o experiență de joc de calitate.
7. Unibet – oferă o experiență de joc completă, cu jocuri de cazino, poker, sport și mai mult.

Casino Top: cei mai buni casinouri online din România

Jocurile de noroc online cele mai populare din România

Jocurile de noroc online sunt din ce în ce mai populare în România, iar dintre acestea, următoarele sunt cele mai solicitate:
1. Poker online – oferă posibilitatea de a juca mai multe variante ale jocului, precum Texas Hold’em și Omaha.
2. Ruleta online – un joc clasic de cazino, acum disponibil și online, oferind posibilitatea de a face pariuri pe numere, culori sau grupe de numere.
3. Blackjack online – un joc popular de carti, cu reguli simple si o mare posibilitate de castig.
4. Baccarat online – un joc de cazino de lux, cu reguli ușor de învățat si o mare potential de castig.
5. Jocuri de sloturi online – oferă o varietate de teme si posibilități de câștig, cu jackpots progresive și free spins.
6. Bingo online – un joc de noroc popular, acum disponibil și online, oferind posibilitatea de a câștiga premii mari.
7. Loteria online – oferă posibilitatea de a participa la diverse sortareuri de loto, precum 6/49 si 5/45, online.

Cum alegeţi un casino online sigur şi de încredere în România

Daca cautati un casino online sigur şi de încredere în România, există câteva factori importanţi de luat în considerare. În primul rând, verifica dacă casino-ul deține o licenţă de la Autoritatea Naţională a Jocurilor de Noroc din România. De asemenea, asigurați-vă că casino-ul are o gamă diversă de jocuri de la dezvoltatori recunoscuţi, cum ar fi NetEnt, Microgaming sau Playtech. Verificaţi, de asemenea, dacă oferă metode de plată sigure şi rapide, cum ar fi cardurile de credit/debit sau portofele electronice. O altă consideraţie importantă este serviciul client al casino-ului – asigurați-vă că este disponibil 24/7 prin chat live sau email. În plus, verificaţi dacă oferă bonusuri şi promoţii atractive pentru noi jucători. În cele din urmă, citiţi recenziile şi comentariile altor jucători pentru a vă face o idee despre experienţa lor cu acel casino online. Cu toate acestea, nu uitaţi să jucaţi responsabil şi să vă fixaţi limite de pierderi înainte de începerea jocului.

Maria, 30 de ani:

Am avut o experiență minunată la Casino Top! Interfața lor este foarte prietenoasă și facilă de utilizat. Am încercat câț couple de jocuri și am câștigat la fiecare dintre ele. Serviciul client este excelent – răspunsul a fost rapid și am primit ajutorul de care aveam nevoie într-un timp scurt. În general, este un loc minunat unde să te distrezi și, cu noroc, să câștigi ceva bani!

Alexandru, 40 de ani:

Cei mai buni casinouri online din România? Pentru mine, Casino Top este cel care se detașează! Am fost impresionat de varietatea de jocuri disponibile – de la jocuri de masă clasice până la sloturi cu teme interesante. Grafica și sunetul sunt deosebit de bune, ceea ce face jocul mai distractiv. Recomand cu încredere Casino Top tuturor iubitorilor de jocuri de noroc online!

Andreea, 28 top 10 online casinos de ani:

M-am distrat foarte mult la Casino Top. Am fost surprinsă de bonusurile generoase oferite de către casino – m-au ajutat mult la începutul jocului. Am jucat la câteva jocuri de cazino în direct și mi-a plăcut foarte mult experiența. De asemenea, am fost impresionată de opțiunile de plată sigure și ușor de utilizat. În general, Casino Top este un loc bun unde să te distrezi și să câștigi ceva bani!

Doriți să aflați cei mai buni casinouri online din România? Ne puteți face tot felul de întrebări despre Casino Top.

Ce sunt cele mai bune opțiuni pentru jocul online în România? Ce casinouri online sunt de încredere și sigure?

Pe acest blog vom răspunde la toate întrebările dvs. despre Casino Top și vom oferi recenzii detaliate despre cei mai buni casinouri online din România.

Design and Develop by Ovatheme